#!/bin/bash

# 定义脚本目录和说明文件
SCRIPTS_DIR="/data/shell"
DESCRIPTIONS_FILE="$SCRIPTS_DIR/descriptions.txt"

# 检查描述文件是否存在
if [[ ! -f "$DESCRIPTIONS_FILE" ]]; then
    echo "描述文件 $DESCRIPTIONS_FILE 不存在。请创建它并添加脚本说明。"
    exit 1
fi

# 读取描述文件到数组中
mapfile -t DESCRIPTIONS &lt; "$DESCRIPTIONS_FILE"

# 显示菜单并获取用户选择
echo "请选择一个脚本来执行："
select SCRIPT in "${DESCRIPTIONS[@]}"; do
    if [[ -n "$SCRIPT" ]]; then
        # 提取脚本名称（假设描述格式为 "脚本名: 说明"）
        SCRIPT_NAME=$(echo "$SCRIPT" | cut -d':' -f1)
        SCRIPT_PATH="$SCRIPTS_DIR/$SCRIPT_NAME"
        
        if [[ -x "$SCRIPT_PATH" ]]; then
            echo "正在执行 $SCRIPT_NAME..."
            "$SCRIPT_PATH"
            echo "脚本 $SCRIPT_NAME 执行完毕。"
        else
            echo "脚本 $SCRIPT_NAME 不可执行或不存在。"
        fi
    fi
done
